package com.ruoyi.work.service;

import java.util.List;
import com.ruoyi.work.domain.WorkInvoice;

/**
 * 申请开票Service接口
 * 
 * @author ruoyi
 * @date 2021-12-27
 */
public interface IWorkInvoiceService 
{
    /**
     * 查询申请开票
     * 
     * @param invoiceId 申请开票主键
     * @return 申请开票
     */
    public WorkInvoice selectWorkInvoiceByInvoiceId(Long invoiceId);
    /**
     * 查询申请开票
     *
     * @param invoiceId 申请开票主键
     * @return 申请开票
     */
    public List<WorkInvoice> selectWorkInvoiceByInvoiceIds(String[] invoiceIds);
    /**
     * 查询申请开票列表
     * 
     * @param workInvoice 申请开票
     * @return 申请开票集合
     */
    public List<WorkInvoice> selectWorkInvoiceList(WorkInvoice workInvoice);

    /**
     * 新增申请开票
     * 
     * @param workInvoice 申请开票
     * @return 结果
     */
    public int insertWorkInvoice(WorkInvoice workInvoice);

    /**
     * 修改申请开票
     * 
     * @param workInvoice 申请开票
     * @return 结果
     */
    public int updateWorkInvoice(WorkInvoice workInvoice);

    /**
     * 批量删除申请开票
     * 
     * @param invoiceIds 需要删除的申请开票主键集合
     * @return 结果
     */
    public int deleteWorkInvoiceByInvoiceIds(String invoiceIds);

    /**
     * 删除申请开票信息
     * 
     * @param invoiceId 申请开票主键
     * @return 结果
     */
    public int deleteWorkInvoiceByInvoiceId(Long invoiceId);

    public List<WorkInvoice> selectInvoiceByCancel(Long incomingId);
    public List<WorkInvoice> selectInvoicePaperByCancel(WorkInvoice workInvoice);
}
